/*
author: TangQiao @ Wind 

	problem name: Chocolate
	source : BNU ONLINE JUDGE
	problem type: 递推式，找重复规律
	problem description: 
	problem solution: 找出递推式，然后发现N到了一定程度之后，答案变得只有两种，分为奇偶两种。
	所以只要算到那个程度就可以不算了。我这儿设的是5000。

	award & note :  开始没有考虑很多特殊情况，所以错了很多次。比如N=1，M非常大等等。
	
	date : 2005.7.3 北师大校队训练
	
*/
#include <stdio.h>
#include <string.h>
#include <math.h>
#define MAX 5000

double last[2][120];

main()
{

	int c,n,m;
	int i,j;
	int one,two,temp,sign;
	int loop;
	double rate;

	while (1)
	{
		scanf("%d", &c);
		if (c==0) break;
		scanf("%d%d", &n, &m);
		rate=1.0/c;

		one=0;
		two=1;
		sign=1;
		for (i=0;i<120;i++) last[0][i]=last[1][i]=0;
		last[0][1]=1;


		if (n>MAX) loop=MAX;
		else loop=n;
		for (int time=2; time<=loop; time++)
		{				
			for (i=1; i<c;i++)
			{
				last[two][i]=last[one][i-1]*(c-i+1)/c+last[one][i+1]*(i+1)/c;				
			}
			last[two][0]=last[one][1]*rate;
			last[two][c]=last[one][c-1]*rate;

//			for (j=0;j<=c;j++) printf("%.3lf, ",last[two][j]);
//			printf("\n\n");
			temp=one;
			one=two;
			two=temp;
		
		}
		
		if (n==0)
		{
			if (m==0) printf("1.000\n");
			else printf("0.000\n");
		}
		else if (m>c) printf("0.000\n");
		else if (n>MAX)
		{
			if (n%2==0) printf("%.3lf\n", last[one][m]);
			else printf("%.3lf\n",last[two][m]);
		}
		else
		{
			printf("%.3lf\n", last[one][m]);
		}
	}

	return 0;
}